In related work published in U.S. Patent Publication 2003-0221106, we introduced a new paradigm for synchronization of media signals such as video and audio streams and applied it to digital watermark applications. In this document, we cover this synchronization paradigm and apply this paradigm to different forms of synchronization, including both temporal and spatial synchronization of digital watermarks. For spatial synchronization, we apply the paradigm in a spatial coordinate system of a media signal, such as the two-dimensional spatial coordinate system of a digital still image or frame of video. We have applied this paradigm to perform spatial synchronization of digital watermarks.
Digital watermarking systems typically have two primary components: an encoder that embeds a watermark in a host media signal, and a decoder that detects and reads the embedded watermark from a signal suspected of containing a watermark (a suspect signal). The encoder embeds a watermark by subtly altering the host media signal such that the watermark is imperceptible or nearly imperceptible to a human, yet automatically detectable with appropriate knowledge of the embedding function. The reading component analyzes a suspect signal to detect whether a watermark is present. In applications where the watermark encodes information, the reader extracts this information from the detected watermark. The embedding and reading functions employ parameters, typically referred to as a key or keys, which identify the attributes of the host signal that are changed to embed a watermark signal and that define how those attributes are to be interpreted to carry hidden message symbols.
The challenge of spatial synchronization in digital watermarking is to make the digital watermark robust to distortions of the spatial coordinate system of the signal in which it is embedded. Examples of spatial distortion include cropping and translation (shifting the position of the image and/or removing portions of the image), spatial scaling (e.g., magnifying or shrinking an image), rotation, shearing, etc. One way to accomplish synchronization is to embed the watermark into and extract the watermark from attributes of a host media signal that are sufficiently invariant to spatial distortions. Another way to accomplish synchronization is to detect and compensate for the spatial distortion to enable the digital watermark to be recovered. Features of the host signal and/or the watermark signal may be used to detect and compensate for distortion. These methods are not necessarily exclusive and can be used in combination. For example, features of the watermark may be used to detect and compensate for rotation and scaling. Then after compensating for rotation and scaling, variable message data may be decoded from the watermark in a domain of the signal that is robust to translation. Alternatively, other watermark features may be used to detect and compensate for translation before extracting the variable message data.
Several particular digital watermarking techniques have been developed. The reader is presumed to be familiar with the literature in this field. Particular techniques for embedding and detecting imperceptible watermarks in media signals are detailed in the assignee's U.S. Pat. Nos. 6,122,403 and 6,614,914, which are herein incorporated by reference.
A method for spatial synchronization of a digital watermark generates a digital watermark with spatial redundancy using a key generator, feature extraction, and redundancy control. The spatial redundancy is used to detect geometric distortion of a signal in which the watermark is embedded using an autocorrelation method to detect peaks caused by the redundancy of the watermark structure. These peaks are then analyzed with a histogram method to detect rotation and scaling of the host media signal. The spatial synchronization process is applied to watermarks for both intra-coded frames of video (I-frames) as well as still images.
Another method of synchronization of a digital watermark detector comprises receiving a host media signal in which a digital watermark is embedded, calculating a content feature from the host media signal, and using the content feature as a key to detect the digital watermark.
Yet another method for synchronization of a host media signal uses one or more programmed processors to perform acts of:
detecting redundant features in a host media signal;
computing geometric or temporal distortion of the host media signal from the redundant features;
synchronizing the host media signal using the estimates of the geometric or temporal distortion of the media signal;
extracting a feature value from the host media signal;
computing a watermark signal as a function of the feature value input to a state machine; and
detecting the watermark signal in the synchronized host media signal.
Further features of the synchronization protocol will become apparent with reference to the following detailed description and accompanying drawings.